#ifndef MOVINGOBJECT_H
#define MOVINGOBJECT_H

#include <QObject>
#include <QLabel>
#include <QTimer>
#include <QString>
class MovingObject : public QObject
{
    Q_OBJECT

public:
    explicit MovingObject(const QString &imagePath, QWidget *parent = nullptr); // 构造函数，传入图片路径
    ~MovingObject(); // 析构函数

    void startMoving(); // 启动移动
    void stopMoving(); // 停止移动
    void moveObject(); // 移动逻辑
    void checkCollision(const QRect &manRect);
 //std::unique_ptr<QLabel> label; // 使用智能指针管
    QLabel *label; // 用于显示物体的 QLabel
    int objectX, objectY; // 物体的当前位置
    int targetX, targetY; // 物体的目标位置
    bool collisionDetected = false; // 是否发生碰撞

private:
    QTimer *moveTimer; // 移动定时器

};

#endif // MOVINGOBJECT_H
